1. Technical Field
The present invention is generally directed to an improved data processing system. More specifically, the present invention is directed to a system and method for monitoring the availability of applications in a data processing system.
2. Description of Related Art
Application availability, i.e. continuous access to an application with predictable performance, is an aspect of applications provided over data processing networks that is sought to be increased. That is, users of network provided applications wish to have continuous application access while application providers wish to provide uninterrupted access to these applications. However, most network based applications are complex, dynamic and depend on availability of both computer system and network resources to perform their operations. Thus, it is very difficult to achieve complete 100% application availability.
Therefore, it is necessary to have an application availability monitoring system that can monitor application performance characteristics, e.g., response time, to determine if an application is about to become unavailable and the cause of this unavailability. Fishman, “Application Availability: An Approach to Measurement,” Sun Microsystems, Inc., 2000, which is hereby incorporated by reference, sets forth one possible approach to decomposing applications for measurement, classifying service level indicators, and presenting measurement as a mode of service level contracting and feedback.
The usual solution to providing an application availability monitoring system requires that the developer of the application availability monitoring system have a detailed understanding and knowledge of the application's structure. Moreover, configuring and tuning an application availability monitoring system to alert an operator when the application becomes unavailable or is about to become unavailable is a labor intensive task that requires constant maintenance.
Therefore, it would be beneficial to have a system and method for monitoring application availability that requires minimal application-specific knowledge, little configuration, and self-adapts to eliminate the on-going maintenance requirement.